<?php
/**
 * Created by PhpStorm.
 * User: Administrator
 * Date: 2020/1/17
 * Time: 9:40
 */

namespace Modules\Admin\Http\Controllers;


use Illuminate\Support\Facades\Request;
use Modules\Admin\Service\GiftService;
class GiftController extends BaseController
{

    /**
     *  礼包列表
     *  hinq 2020 1 17
     *
     **/
    public function index(){
        $data = [
            [
                'type' => 1,
                'name' => '新用户注册礼包',
                'age' => ''
            ],
            [
                'type' => 2,
                'name' => '2年老用户回馈礼包',
                'age' => 2
            ],
            [
                'type' => 4,
                'name' => '3年老用户回馈礼包',
                'age' => 3
            ],
            [
                'type' => 5,
                'name' => '5年老用户回馈礼包',
                'age' => 5
            ],
            [
                'type' => 3,
                'name' => '邀请礼包',
                'age' => ''
            ],
        ];
        return view('admin::gift.index',['data'=>$data]);
    }


    /**
     *  编辑礼包
     *  hinq 2020 1 17
     *
     **/
    public function edit(){
        //
        $type = (int) Request::get('type');
        $age =  Request::get('age');

        //获取当前选择的数据详情
        $arr_info = GiftService::get_info( (int) $type , $age );
        //获取所有的洗车券
        $arr_input = (array) ['pid'=>1,'type'=>$type ,'type_age'=>$age];
        $arr_list = GiftService::gift_get_coupons( (array) $arr_input );

        return view('admin::gift.edit',['type'=>$type ,'data'=>$arr_list['data'] , 'info'=>$arr_info['data']]);
    }


    /**
     *  获取优惠券数据
     *  hinq 2020 1 17
     *
     **/
    public function gift_get_coupons(){
        $list_input = (array) Request::all();
        $arr_list = GiftService::gift_get_coupons( (array) $list_input );
        return $arr_list;
    }

    /**
     *  保存、修改信息
     *  hinq 2020 2 26
     *
     **/
    public function store(){
        $arr_input = (array) Request::all();
        $temp = self::check_data( $arr_input );
        if( $temp['state'] != 0 ){
            return $temp;
        }
        return GiftService::store( (array) $temp );
    }

    /**
     *  验证提交数据的有效性
     *  愿所有的付出都能够被温柔以待
     *  hinq 2020 2 26
     *
     **/
    public function check_data( array $arr_input ){
        unset( $arr_input['_token']);
        if( empty( $arr_input['title'] ) ){
            return hello_error('礼包名称不能为空');
        }
        if( empty( $arr_input['title'] ) ){
            return hello_error('礼包名称不能为空');
        }
        if( !empty( $arr_input['manjian'] ) ){
            foreach ( $arr_input['manjian'] as $key=>$vo ){
               if( empty( $arr_input['manjian_number'][$key] ) ){
                   return hello_error('请填写赠送数量');
               }
               if( empty( $arr_input['manjian_validity_at'][$key] ) ){
                    return hello_error('请填写有效期限');
               }
            }
        }
        if( !empty( $arr_input['zhekou'] ) ){
            foreach ( $arr_input['zhekou'] as $key=>$vo ){
                if( empty( $arr_input['zhekou_number'][$key] ) ){
                    return hello_error('请填写赠送数量');
                }
                if( empty( $arr_input['zhekou_validity_at'][$key] ) ){
                    return hello_error('请填写有效期限');
                }
            }
        }
        if( !empty( $arr_input['xiche'] ) ){
            foreach ( $arr_input['xiche'] as $key=>$vo ){
                if( empty( $arr_input['xiche_number'][$key] ) ){
                    return hello_error('请填写赠送数量');
                }
                if( empty( $arr_input['xiche_validity_at'][$key] ) ){
                    return hello_error('请填写有效期限');
                }
            }
        }
        if( $arr_input['type'] == 3 ){
            if( empty( $arr_input['number'] ) ){
                return hello_error('请填写邀请人数');
            }
        }else if( $arr_input['type'] == 2 ){
            if( empty( $arr_input['age'] ) ){
                return hello_error('请选择用户年限');
            }
        }

        return $arr_input;
    }

    //新用户注册发放注册礼包
    public function gift_regiset(){
        /**
         *  1:没有新注册的用户都需要调用次函数
         *  2：验证新用户注册礼包是否开启
         *  3：获取新用户注册礼包设置的礼包数据信息（car_gifts和car_gift_extend）
         *  4：将新用户注册礼包发放到新用户账户中（car_coupon_grant_detail）
         *  5：记录发放日志
         **/

        //验证注册礼包是否开启（由于现在控制功能为完善，暂且不验证）
        $user_id = 12;
        //获取平台设置的用户注册礼包数据
        return GiftService::gift_regiset( (int) $user_id );
    }

    //新用户注册发放注册礼包
    public function gift_invite(){
        /**
         *  1:没有新注册的用户都需要调用次函数
         *  2：验证新用户注册礼包是否开启
         *  3：获取新用户注册礼包设置的礼包数据信息（car_gifts和car_gift_extend）
         *  4：将新用户注册礼包发放到新用户账户中（car_coupon_grant_detail）
         *  5：记录发放日志
         **/

        //验证注册礼包是否开启（由于现在控制功能为完善，暂且不验证）
        $user_id = 12;
        $to_user_id = 31;
        //获取平台设置的用户注册礼包数据
        return GiftService::gift_invite( (int) $user_id , (int) $to_user_id );
    }

    //老用户回馈发放礼包
    public function gift_old(){
        return GiftService::gift_old();
    }



}
